package com.epsilon.pos.principal.productos.dao;

import java.util.Map;

import com.epsilon.commons.context.model.ContextoDeAplicacion;
import com.epsilon.pos.principal.productos.model.ProductosPrincipalException;
import com.epsilon.pos.productos.modelo.ArticuloUnitario;

public interface ProductosPrincipalDao {
	boolean setArticuloUnitario( ArticuloUnitario articuloUnitario ) throws ProductosPrincipalException;

	boolean updtaeArticuloUnitario( ArticuloUnitario articuloUnitario ) throws ProductosPrincipalException;

	boolean deleteArticuloUnitario( ArticuloUnitario articuloUnitario ) throws ProductosPrincipalException;

	boolean existsArticulo( ArticuloUnitario articuloUnitario ) throws ProductosPrincipalException;
	
	int getCantidadDeArticulosUnitariosEnAlmacen( ArticuloUnitario articuloUnitario ) throws ProductosPrincipalException;

//	List< ArticuloUnitario > getListaDeArticulosUnitarios() throws ProductosPrincipalException;
	
	Map< String, ArticuloUnitario > getMapaDeArticulosUnitarios() throws ProductosPrincipalException;
	
	Map< String, ArticuloUnitario > getMapaDeArticulosUnitariosPorContexto( ContextoDeAplicacion contexto ) throws ProductosPrincipalException;
}